home *** CD-ROM | disk | FTP | other *** search
/ Archive Magazine CD 1995 / Archive Magazine CD 1995.iso / discs / prog_disc / volume_3 / issue11 / postscript / psprolog < prev   
Encoding:
Text File  |  1990-06-29  |  15.1 KB  |  417 lines

  1. % > <PDriver$Dir>.<PDriver$PSprologue>
  2. % User-editable prologue definitions for the PostScript printer driver
  3. % module.
  4. % Version 2.03, first used with version 2.04 of the module.
  5. % This version adapted for full Symbol and ZapfDingbats fonts by:
  6. %                 Leslie J. Currell, June 1990
  7. %%DocumentFonts: Courier Courier-Oblique Courier-Bold
  8. %%+ Courier-BoldOblique Helvetica Helvetica-Oblique Helvetica-Bold
  9. %%+ Helvetica-BoldOblique NewCenturySchlbk-Roman NewCenturySchlbk-Italic
  10. %%+ NewCenturySchlbk-Bold NewCenturySchlbk-BoldItalic Times-Roman
  11. %%+ Times-Italic Times-Bold Times-BoldItalic AvantGarde-Book
  12. %%+ AvantGarde-BookOblique AvantGarde-Demi AvantGarde-DemiOblique
  13. %%+ Bookman-Demi Bookman-DemiItalic Bookman-Light Bookman-LightItalic
  14. %%+ Palatino-Roman ZapfChancery-MediumItalic ZapfDingbats Symbol
  15. %%EndComments
  16.  
  17. % If you add further fonts to the '%%DocumentFonts:' and '%%+" comments
  18. % above, make certain that you keep strictly to the format above - in
  19. % particular, all names are case-sensitive, exactly one space should
  20. % appear between the start of the comment and the first font name on
  21. % the line, exactly one space should appear between font names, and
  22. % there should no surplus spaces at the ends of lines.
  23. %   Note also that all PostScript font names quoted in the font
  24. % translation data at the bottom of this file should appear in these
  25. % comments.
  26.  
  27. % Note for advanced users: the printer driver module will remove
  28. % PostScript comments from this file when copying it into the PostScript
  29. % output (to avoid excessive amounts of output) according to the
  30. % following simple algorithm:
  31. %   (a) If a line starts with "%%" or "%!", it is copied without any
  32. %       changes.
  33. %   (b) If a line starts with a "%" and does not start with "%%" or
  34. %       "%!", the whole line is removed, including the new line at the
  35. %       end of it.
  36. %   (c) If a "%" appears anywhere else in a line that does not start
  37. %       with "%%" or "%!", it and all characters up to but not including
  38. %       the following new line are removed.
  39. % In the unlikely event that you wish to add some PostScript containing
  40. % e.g. a string with a "%" in it, use the "\045" escape sequence
  41. % instead.
  42. %   The printer driver will also compress multiple new lines down to
  43. % one new line when copying this file.
  44.  
  45. % CHARACTER ENCODING VECTORS
  46.  
  47. % The following chunk of PostScript defines the ISO 8859-1 Latin 1
  48. % mapping of character codes to PostScript character names, plus
  49. % Acorn's extensions to this character encoding. It can be edited if
  50. % necessary to produce other encodings. Note that PostScript character
  51. % names are case-sensitive. Also note that if you add composite
  52. % characters, you must make certain that all their components appear
  53. % somewhere in the encoding vector - if necessary, among the unused
  54. % codes 0-31.
  55.  
  56. /Latin1Enc [
  57. /dotlessi /ring /.notdef /.notdef       % Codes 0-31 (character
  58. /.notdef /.notdef /.notdef /.notdef     %   components required to
  59. /.notdef /.notdef /.notdef /.notdef     %   make all the composite
  60. /.notdef /.notdef /.notdef /.notdef     %   characters work).
  61. /.notdef /.notdef /.notdef /.notdef
  62. /.notdef /.notdef /.notdef /.notdef
  63. /.notdef /.notdef /.notdef /.notdef
  64. /.notdef /.notdef /.notdef /.notdef
  65. /space /exclam /quotedbl /numbersign    % Codes 32-63
  66. /dollar /percent /ampersand /quotesingle
  67. /parenleft /parenright /asterisk /plus
  68. /comma /hyphen /period /slash
  69. /zero /one /two /three
  70. /four /five /six /seven
  71. /eight /nine /colon /semicolon
  72. /less /equal /greater /question
  73. /at /A /B /C                            % Codes 64-95
  74. /D /E /F /G
  75. /H /I /J /K
  76. /L /M /N /O
  77. /P /Q /R /S
  78. /T /U /V /W
  79. /X /Y /Z /bracketleft
  80. /backslash /bracketright /circumflex /underscore
  81. /grave /a /b /c                         % Codes 96-127
  82. /d /e /f /g
  83. /h /i /j /k
  84. /l /m /n /o
  85. /p /q /r /s
  86. /t /u /v /w
  87. /x /y /z /braceleft
  88. /bar /braceright /tilde /.notdef        % NB code 127 is unused
  89. /.notdef /.notdef /.notdef /.notdef     % Codes 128-139 (Wimp characters)
  90. /.notdef /.notdef /.notdef /.notdef
  91. /.notdef /.notdef /.notdef /.notdef
  92. /.notdef /.notdef /.notdef /bullet      % Codes 140-159 (Acorn extensions)
  93. /quoteleft /quoteright /guilsinglleft /guilsinglright
  94. /quotedblleft /quotedblright /quotedblbase /endash
  95. /emdash /minus /OE /oe
  96. /dagger /daggerdbl /fi /fl
  97. /space /exclamdown /cent /sterling      % Codes 160-191
  98. /currency /yen /brokenbar /section
  99. /dieresis /copyright /ordfeminine /guillemotleft
  100. /logicalnot /hyphen /registered /macron
  101. /degree /plusminus /twosuperior /threesuperior
  102. /acute /mu /paragraph /periodcentered
  103. /cedilla /onesuperior /ordmasculine /guillemotright
  104. /onequarter /onehalf /threequarters /questiondown
  105. /Agrave /Aacute /Acircumflex /Atilde    % Codes 192-223
  106. /Adieresis /Aring /AE /Ccedilla
  107. /Egrave /Eacute /Ecircumflex /Edieresis
  108. /Igrave /Iacute /Icircumflex /Idieresis
  109. /Eth /Ntilde /Ograve /Oacute
  110. /Ocircumflex /Otilde /Odieresis /multiply
  111. /Oslash /Ugrave /Uacute /Ucircumflex
  112. /Udieresis /Yacute /Thorn /germandbls
  113. /agrave /aacute /acircumflex /atilde    % Codes 224-255
  114. /adieresis /aring /ae /ccedilla
  115. /egrave /eacute /ecircumflex /edieresis
  116. /igrave /iacute /icircumflex /idieresis
  117. /eth /ntilde /ograve /oacute
  118. /ocircumflex /otilde /odieresis /divide
  119. /oslash /ugrave /uacute /ucircumflex
  120. /udieresis /yacute /thorn /ydieresis
  121. ] def
  122.  
  123. % This is an encoding vector for a font that is a subset of
  124. % Symbol. 
  125.  
  126. /SymbolEnc [
  127. /dotlessi /ring /.notdef /.notdef
  128. /.notdef /.notdef /.notdef /.notdef
  129. /.notdef /.notdef /.notdef /.notdef
  130. /.notdef /.notdef /.notdef /.notdef
  131. /.notdef /.notdef /.notdef /.notdef
  132. /.notdef /.notdef /.notdef /.notdef
  133. /.notdef /.notdef /.notdef /.notdef
  134. /.notdef /.notdef /.notdef /.notdef
  135. /space /exclam /universal /numbersign
  136. /existential /percent /ampersand /suchthat
  137. /parenleft /parenright /asteriskmath /plus
  138. /comma /minus /period /slash
  139. /zero /one /two /three
  140. /four /five /six /seven
  141. /eight /nine /colon /semicolon
  142. /less /equal /greater /question
  143. /congruent /Alpha /Beta /Chi
  144. /Delta /Epsilon /Phi /Gamma
  145. /Eta /Iota /theta1 /Kappa
  146. /Lambda /Mu /Nu /Omicron
  147. /Pi /Theta /Rho /Sigma
  148. /Tau /Upsilon /sigma1 /Omega
  149. /Xi /Psi /Zeta /bracketleft
  150. /therefore /bracketright /perpendicular /underscore
  151. /radicalex /alpha /beta /chi
  152. /delta /epsilon /phi /gamma
  153. /eta /iota /phi1 /kappa
  154. /lambda /mu /nu /omicron
  155. /pi /theta /rho /sigma
  156. /tau /upsilon /omega1 /omega
  157. /xi /psi /zeta /braceleft
  158. /bar /braceright /similar /.notdef
  159. /.notdef /.notdef /.notdef /.notdef
  160. /.notdef /.notdef /.notdef /.notdef
  161. /.notdef /.notdef /.notdef /.notdef
  162. /.notdef /.notdef /.notdef /.notdef
  163. /.notdef /.notdef /.notdef /.notdef
  164. /.notdef /.notdef /.notdef /.notdef
  165. /.notdef /.notdef /.notdef /.notdef
  166. /.notdef /.notdef /.notdef /.notdef
  167. /.notdef /Upsilon1 /minute /lessequal
  168. /fraction /infinity /florin /club
  169. /diamond /heart /spade /arrowboth
  170. /arrowleft /arrowup /arrowright /arrowdown
  171. /degree /plusminus /second /greaterequal
  172. /multiply /proportional /partialdiff /bullet
  173. /divide /notequal /equivalence /approxequal
  174. /ellipsis /arrowvertex /arrowhorizex /carriagereturn
  175. /aleph /Ifraktur /Rfraktur /weierstrass
  176. /circlemultiply /circleplus /emptyset /intersection
  177. /union /propersuperset /reflexsuperset /notsubset
  178. /propersubset /reflexsubset /element /notelement
  179. /angle /gradient /registerserif /copyrightserif
  180. /trademarkserif /product /radical /dotmath
  181. /logicalnot /logicaland /logicalor /arrowdblboth
  182. /arrowdblleft /arrowdblup /arrowdblright /arrowdbldown
  183. /lozenge /angleleft /registersans /copyrightsans
  184. /trademarksans /summation /.notdef /.notdef
  185. /.notdef /.notdef /.notdef /.notdef
  186. /.notdef /.notdef /.notdef /.notdef
  187. /.notdef /.notdef /.notdef /.notdef
  188. /.notdef /.notdef /.notdef /.notdef
  189. /.notdef /.notdef /.notdef /.notdef
  190. /.notdef /.notdef /.notdef /.notdef
  191. ] def
  192.  
  193. % This is an encoding vector for a font that is a subset of
  194. % ZapfDingbats. It has some permutations from the original ZapfDingbats
  195. % encoding to ensure that a set of convenient varied bullet characters
  196. % are all drawn together in the codes &61 to &6F.
  197. % These permutations are as follows:
  198. %   swap &25 (a4)  with &61 (a60)
  199. %   move &34 (a20) to   &62
  200. %   move &38 (a24) to   &63
  201. %   swap &48 (a35) with &65 (a64)
  202. %   move &5D (a56) to   &66
  203. %   move &70 (a203)to   &67
  204. %   move &71 (a75) to   &68
  205. %   swap &72 (a204)with &69 (a68)
  206. %   move &75 (a78) to   &6A
  207. %   swap &E7 (a177)with &6B (a70)
  208.  
  209. /SelwynEnc [
  210. /.notdef /.notdef /.notdef /.notdef     % Codes 0-31 (character
  211. /.notdef /.notdef /.notdef /.notdef     %   components required to
  212. /.notdef /.notdef /.notdef /.notdef     %   make all the composite
  213. /.notdef /.notdef /.notdef /.notdef     %   characters work).
  214. /.notdef /.notdef /.notdef /.notdef
  215. /.notdef /.notdef /.notdef /.notdef
  216. /.notdef /.notdef /.notdef /.notdef
  217. /.notdef /.notdef /.notdef /.notdef
  218. /space /a1 /a2 /a202                    % Codes 32-63
  219. /a3 /a60 /.notdef /a119
  220. /.notdef /a117 /a11 /a12
  221. /.notdef /a14 /.notdef /.notdef
  222. /.notdef /.notdef /.notdef /a19
  223. /.notdef /a21 /a22 /.notdef
  224. /.notdef /a25 /a26 /a27
  225. /a28 /a6 /a7 /a8
  226. /a9 /a10 /.notdef /.notdef              % Codes 64-95
  227. /.notdef /.notdef /a33 /a34
  228. /a64 /a36 /a37 /.notdef
  229. /a39 /a40 /.notdef /.notdef
  230. /a43 /a44 /.notdef /.notdef
  231. /.notdef /.notdef /.notdef /.notdef
  232. /.notdef /.notdef /.notdef /a54
  233. /a55 /.notdef /a57 /a58
  234. /a59 /a4 /a20 /a24                      % Codes 96-127
  235. /a63 /a35 /a56 /a203
  236. /a75 /a204 /a78 /a177
  237. /a71 /a72 /a73 /a74
  238. /.notdef /.notdef /a68 /a76
  239. /a77 /.notdef /a79 /a81
  240. /a82 /a83 /a84 /.notdef
  241. /.notdef /.notdef /.notdef /.notdef
  242. /.notdef /.notdef /.notdef /.notdef     % Codes 128-159
  243. /.notdef /.notdef /.notdef /.notdef
  244. /.notdef /.notdef /.notdef /.notdef
  245. /.notdef /.notdef /.notdef /.notdef
  246. /.notdef /.notdef /.notdef /.notdef
  247. /.notdef /.notdef /.notdef /.notdef
  248. /.notdef /.notdef /.notdef /.notdef
  249. /.notdef /.notdef /.notdef /.notdef
  250. /.notdef /.notdef /.notdef /.notdef     % Codes 160-191
  251. /.notdef /.notdef /.notdef /.notdef
  252. /a112 /a111 /a110 /a109
  253. /a120 /a121 /a122 /a123
  254. /a124 /a125 /a126 /a127
  255. /a128 /a129 /a130 /a131
  256. /a132 /a133 /a134 /a135
  257. /a136 /a137 /a138 /a139
  258. /.notdef /.notdef /.notdef /.notdef     % Codes 192-223
  259. /.notdef /.notdef /.notdef /.notdef
  260. /.notdef /.notdef /.notdef /.notdef
  261. /.notdef /.notdef /.notdef /.notdef
  262. /.notdef /.notdef /.notdef /.notdef
  263. /.notdef /a161 /a163 /a164
  264. /a196 /a165 /a192 /.notdef
  265. /a167 /.notdef /.notdef /.notdef
  266. /.notdef /.notdef /a173 /a162           % Codes 224-255
  267. /a174 /a175 /a176 /a70
  268. /.notdef /.notdef /.notdef /.notdef
  269. /.notdef /.notdef /.notdef /.notdef
  270. /acorn /.notdef /.notdef /.notdef       % Acorn character not available,
  271. /.notdef /.notdef /.notdef /.notdef     %   so becomes /.notdef
  272. /.notdef /.notdef /.notdef /.notdef
  273. /.notdef /.notdef /.notdef /.notdef
  274. ] def
  275.  
  276. /DingbatsEnc [
  277. /.notdef /.notdef /.notdef /.notdef
  278. /.notdef /.notdef /.notdef /.notdef
  279. /.notdef /.notdef /.notdef /.notdef
  280. /.notdef /.notdef /.notdef /.notdef
  281. /.notdef /.notdef /.notdef /.notdef
  282. /.notdef /.notdef /.notdef /.notdef
  283. /.notdef /.notdef /.notdef /.notdef
  284. /.notdef /.notdef /.notdef /.notdef
  285. /space /a1 /a2 /a202
  286. /a3 /a4 /a5 /a119
  287. /a118 /a117 /a11 /a12
  288. /a13 /a14 /a15 /a16
  289. /a105 /a17 /a18 /a19
  290. /a20 /a21 /a22 /a23
  291. /a24 /a25 /a26 /a27
  292. /a28 /a6 /a7 /a8
  293. /a9 /a10 /a29 /a30 
  294. /a31 /a32 /a33 /a34
  295. /a35 /a36 /a37 /a38
  296. /a39 /a40 /a41 /a42
  297. /a43 /a44 /a45 /a46
  298. /a47 /a48 /a49 /a50
  299. /a51 /a52 /a53 /a54
  300. /a55 /a56 /a57 /a58
  301. /a59 /a60 /a61 /a62
  302. /a63 /a64 /a65 /a66
  303. /a67 /a68 /a69 /a70
  304. /a71 /a72 /a73 /a74
  305. /a203 /a75 /a204 /a76
  306. /a77 /a78 /a79 /a81
  307. /a82 /a83 /a84 /a97
  308. /a98 /a99 /a100 /.notdef
  309. /.notdef /.notdef /.notdef /.notdef
  310. /.notdef /.notdef /.notdef /.notdef
  311. /.notdef /.notdef /.notdef /.notdef
  312. /.notdef /.notdef /.notdef /.notdef
  313. /.notdef /.notdef /.notdef /.notdef
  314. /.notdef /.notdef /.notdef /.notdef
  315. /.notdef /.notdef /.notdef /.notdef
  316. /.notdef /.notdef /.notdef /.notdef
  317. /.notdef /a101 /a102 /a103
  318. /a104 /a106 /a107 /a108
  319. /a112 /a111 /a110 /a109
  320. /a120 /a121 /a122 /a123
  321. /a124 /a125 /a126 /a127
  322. /a128 /a129 /a130 /a131
  323. /a132 /a133 /a134 /a135
  324. /a136 /a137 /a138 /a139 
  325. /a140 /a141 /a142 /a143
  326. /a144 /a145 /a146 /a147
  327. /a148 /a149 /a150 /a151
  328. /a152 /a153 /a154 /a155
  329. /a156 /a157 /a158 /a159
  330. /a160 /a161 /a163 /a164
  331. /a196 /a165 /a192 /a166
  332. /a167 /a168 /a169 /a170
  333. /a171 /a172 /a173 /a162
  334. /a174 /a175 /a176 /a177
  335. /a178 /a179 /a193 /a180
  336. /a199 /a181 /a200 /a182
  337. /.notdef /a201 /a183 /a184
  338. /a197 /a185 /a194 /a198
  339. /a186 /a195 /a187 /a188
  340. /a189 /a190 /a191 /.notdef
  341. ] def
  342.  
  343. % Unless you really know what you are doing, do not edit the following
  344. % PostScript, except for the indicated possible changes.
  345.  
  346. % The size of the following dictionary can be changed. One entry is used
  347. % for each font translation and one entry is used for the system font.
  348. /fonts 200 dict def
  349.  
  350. /ChkCh {
  351.   dup Encoding exch get
  352.   CharStrings exch known {pop} {Encoding exch /.notdef put} ifelse
  353. } bind def
  354.  
  355. /FF {
  356.   3 1 roll
  357.   findfont begin
  358.     currentdict dup maxlength 1 add dict begin
  359.       {1 index /FID ne {def} {pop pop} ifelse} forall
  360.       /Encoding 3 -1 roll 256 array copy def
  361.       /Metrics 1 dict def
  362.       Metrics /.notdef 0 put
  363. % Possible change: Delete or comment out the following line if you
  364. % want undefined PostScript characters to generate errors rather than
  365. % be ignored.
  366.       0 1 255 /ChkCh load for
  367.       dup currentdict
  368.     end
  369.   end
  370.   definefont
  371.   fonts 3 1 roll put
  372. } bind def
  373.  
  374. % The font translation data follows. You can install further
  375. % translations by adding lines of the form:
  376. %   /<RISC OS font name> /<PostScript font name> <encoding name> FF
  377. % Note that all names are case-sensitive. Also note that you should
  378. % add any additional PostScript font names that appear here to the
  379. % '%%DocumentFonts' comment at the head of this file.
  380. %   This line will take a copy of the PostScript font specified, copy
  381. % the specified encoding into it to get the right mapping of character
  382. % codes to characters, change the width of the undefined character to
  383. % zero and install the result as a new font whose name is the RISC OS
  384. % font name. In addition, it checks that all of the characters named
  385. % in the encoding vector exist in the font: any that don't are removed
  386. % (i.e. replaced by '/.notdef') from the new font's encoding.
  387.  
  388. /AvantGarde.Book /AvantGarde-Book Latin1Enc FF
  389. /AvantGarde.Book.Oblique /AvantGarde-BookOblique Latin1Enc FF
  390. /AvantGarde.Demi /AvantGarde-Demi Latin1Enc FF
  391. /AvantGarde.Demi.Oblique /AvantGarde-DemiOblique Latin1Enc FF
  392. /BookMan.Demi /Bookman-Demi Latin1Enc FF
  393. /BookMan.Demi.Italic /Bookman-DemiItalic Latin1Enc FF
  394. /BookMan.Light /Bookman-Light Latin1Enc FF
  395. /BookMan.Light.Italic /Bookman-LightItalic Latin1Enc FF
  396. /Corpus.Medium /Courier Latin1Enc FF
  397. /Corpus.Medium.Oblique /Courier-Oblique Latin1Enc FF
  398. /Corpus.Bold /Courier-Bold Latin1Enc FF
  399. /Corpus.Bold.Oblique /Courier-BoldOblique Latin1Enc FF
  400. /Homerton.Medium /Helvetica Latin1Enc FF
  401. /Homerton.Medium.Oblique /Helvetica-Oblique Latin1Enc FF
  402. /Homerton.Bold /Helvetica-Bold Latin1Enc FF
  403. /Homerton.Bold.Oblique /Helvetica-BoldOblique Latin1Enc FF
  404. /NewHall.Roman /NewCenturySchlbk-Roman Latin1Enc FF
  405. /NewHall.Roman.Italic /NewCenturySchlbk-Italic Latin1Enc FF
  406. /NewHall.Bold /NewCenturySchlbk-Bold Latin1Enc FF
  407. /NewHall.Bold.Italic /NewCenturySchlbk-BoldItalic Latin1Enc FF
  408. /Palatino.Roman /Palatino-Roman Latin1Enc FF
  409. /Trinity.Medium /Times-Roman Latin1Enc FF
  410. /Trinity.Medium.Italic /Times-Italic Latin1Enc FF
  411. /Trinity.Bold /Times-Bold Latin1Enc FF
  412. /Trinity.Bold.Italic /Times-BoldItalic Latin1Enc FF
  413. /Symbol /Symbol SymbolEnc FF
  414. /Selwyn /ZapfDingbats SelwynEnc FF
  415. /Dingbats /ZapfDingbats DingbatsEnc FF
  416. /ZapfChance.Medium.Italic /ZapfChancery-MediumItalic Latin1Enc FF
  417.